package com.ms.domain.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 用户个人信息更新数据传输对象
 */
@Data
@Schema(name = "用户个人信息更新数据传输对象", description = "用于更新用户个人信息的数据传输对象")
public class UserProfileUpdateDTO implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "用户昵称", example = "张三", requiredMode = Schema.RequiredMode.REQUIRED)
    private String nickname;

    @Schema(description = "用户邮箱", example = "zhangsan@example.com", requiredMode = Schema.RequiredMode.REQUIRED)
    private String email;

    @Schema(description = "用户性别", example = "M", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String gender;

    @Schema(description = "用户简介", example = "这是一个简介", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String bio;

    @Schema(description = "用户生日", example = "2000-01-01", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private String birthday;
}